1. Field of the Invention
The present invention relates to the field of solid state message storage and playback devices, such as voice signal storage and playback.
2. Prior Art
Message management, (more popularly known as "Garbage Collection"), is normally used to make more efficient use of a limited amount of expensive storage medium. The key concept behind garbage collection is to somehow logically connect all the available storage space into one contiguous space, even though the available storage space is physically fragmented in the storage medium. There are various techniques used in computer systems for the mass storage and retrieval of data files, with the garbage collection capability normally being provided by the operating system.
The present message management methods and apparatus are specifically intended for use in a solid state voice messaging chip where voice messages are stored in a solid state memory medium. More specifically, the preferred embodiment of the present invention is intended for use in integrated circuit form realized at least in part as part of analog storage devices of the type manufactured by Information Storage Devices of San Jose, Calif. By way of specific example, the ISD 1016 Single Chip Voice Message System is an analog storage device which has the capability of sequentially sampling and storing in analog voltage level form, an analog signal such as a voice signal, and playing back the stored samples on command so as to reconstruct the voice signal with sufficient fidelity to provide quality voice message annunciation for phone answering machines and other electronically controlled voice message systems. The ISD 1016 is a highly versatile device, as it includes as part of the integrated circuit a preamp, AGC, anti-aliasing filter and nonvolatile solid state analog signal storage as well as all support circuitry required to sample and store a voice signal in analog form, and to play the same back on command. These devices may also be cascaded so that n devices may be used to provide n times the record and playback time of a single device without additional support circuitry.
In the ISD 1016, a voice message may terminate at the end of the storage space, or be earlier terminated by the recording of a unique end of message (EOM) signal which, once initiated, will terminate the playback at that point. This, plus the ability to address starting points for playback, allows the storage and selective playback of multiple messages, and with additional control, the concatenation of words or short phrases to give different messages if desired. However, each message or message segment to be concatenated with another message segment must be in contiguous storage space, as the ISD 1016 cannot concatenate message segments in different memory space with a single starting signal. By way of specific example, if one recorded as the first message on an answering machine:
"Sorry, we are currently not in the office. Please leave a message following the beep."
and as a second message:
"Sorry, we are closed. Our normal hours are 8 to 5 weekdays. Please leave a message at the beep and we will return your call on our next business day. "
a simple two state signal could select between the two messages. However if the first message was later changed to:
"Sorry, we are currently not in the office. Please leave a message following the beep, or call our other office at 123-4567."
it would likely overrun the second message, requiring re-recording of the second message also. Thus for applications wherein individual messages are to be selectively eliminated and new messages of variable length are to be recorded from time to time, a simple method and apparatus is desired to manage the memory space in a manner transparent to those recording and those playing back the remaining messages.